package com.lsh.oms.api.service.shipping;

import com.lsh.base.common.model.CommonResult;
import com.lsh.oms.api.model.order.receipt.ReceiptHeadDto;
import com.lsh.oms.api.model.query.QueryShippingDto;
import com.lsh.oms.api.model.shipping.ModifyShippingExtDto;
import com.lsh.oms.api.model.shipping.ModifyTransDto;
import com.lsh.oms.api.model.shipping.SetDelayShippingDto;

import javax.ws.rs.core.Response;
import javax.ws.rs.core.UriInfo;
import java.util.Map;


/**
 * @author peter
 */
public interface IShippingRestService {

    CommonResult query(UriInfo uriInfo,
                       long page,
                       long limit);

    CommonResult findById(UriInfo uriInfo,
                          Long id);

    Response receipt(Long id, ReceiptHeadDto request);

    /**
     * tms 发货单查询接口
     *
     * @param queryShippingDto 查询参数
     * @return 返回结果
     */
    CommonResult findByParam(QueryShippingDto queryShippingDto);

    /**
     * tms 发货单查询接口
     *
     * @param queryShippingDto 查询参数
     * @return 返回结果
     */
    CommonResult findNumByParam(QueryShippingDto queryShippingDto);

    /**
     * tms 修改线路司机信息
     */
    CommonResult modifyTransByRoute(ModifyTransDto modifyTransDto);

    /**
     * tms 修改线路司机信息
     */
    CommonResult modifyExtByShippingId(ModifyShippingExtDto modifyShippingExtDto);

    /**
     * tms 设置延迟配置送
     */
    CommonResult setDelayShipping(SetDelayShippingDto setDelayShippingDto);


    CommonResult findByOrderids(String orderIds);
}
